package net.zjitc.hashset.word;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Scanner;
import java.util.Set;

/**
 * @Author admin
 * @Date 2019/4/9 13:38
 */
public class test {
    public static void main(String[] args) {
        System.out.println("请输入一句话：");
        Scanner in=new Scanner(System.in);
        String s1=in.nextLine();
        /*将输入的内容以空格分隔，保存在字符串数组中*/
        String [] s= s1.split(" "); //  .split是空格分隔
        /*用来保存单词和次数的容器，单词做key,次数做value*/
        HashMap<String,Integer>  hashMap=new HashMap<String, Integer>() ;
     /*遍历字符串数组，统计单词个数*/
        for (int i=0 ;i<s.length;i++){
            /* 若hashMap中不存在该单词，则加到该集合对象，且value为1
            * 若存在该单词，则取出该key对应的值并+1*/
            if (hashMap.containsKey(s[i])){
                Integer value =hashMap.get(s[i]);
                value++;
                hashMap.put(s[i],value);
            }else {
                hashMap.put(s[i],1);
            }
        }
        System.out.println("统计结果为：");
       /*遍历hashmap*/
       Set<String> keySet= hashMap.keySet();
        Iterator iterator=keySet.iterator();
        while (iterator.hasNext()){
            String key =(String) iterator.next();
            Integer value=hashMap.get(key);
            System.out.println(key+" : "+value);
        }
    }
}
